package com.monna.service;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;

import com.monna.games_2048.R;

/**
 * 为应用设置背景音乐
 */
public class MusicService extends Service implements MediaPlayer.OnCompletionListener {

    /**
     * 音频播放对象
     */
    private MediaPlayer mediaPlayer;

    /**
     * 当前播放状态
     */
    public static boolean isPlay;

    public MusicService() {
    }

    /**
     * 加载播放的音乐文件
     */
    @Override
    public void onCreate(){
        super.onCreate();
        /**
         * 初始化时创建一个MediaPlaye进行资源链接
         */
        mediaPlayer = MediaPlayer.create(this, R.raw.splashing_nik);
        mediaPlayer.setOnCompletionListener(this);
    }

    /**
     * 实现音乐的播放
     * @param intent
     * @param flags
     * @param startId
     * @return
     */
    @Override
    public int onStartCommand(Intent intent, int flags, int startId){
        /**
         * 如果没有播放音乐
         */
        if (!mediaPlayer.isPlaying()){
            //播放音乐
            mediaPlayer.start();
            //当前状态为正在播放音乐
            isPlay = mediaPlayer.isPlaying();
        }
        return super.onStartCommand(intent, flags, startId);
    }

    /**
     * Activity销毁时，停止音乐播放
     */
    @Override
    public void onDestroy(){
        //停止音乐的播放
        mediaPlayer.stop();
        //当前状态没有播放音乐
        isPlay = mediaPlayer.isPlaying();
        //释放资源
        mediaPlayer.release();
        super.onDestroy();
    }

    /**
     * 绑定方法
     * @param intent
     * @return
     */
    @Override
    public IBinder onBind(Intent intent) {
        throw new UnsupportedOperationException("尚未实现");
    }

    @Override
    public void onCompletion(MediaPlayer mp) {

    }
}
